package com.ruoyi.common.utils;

public class ColumnUtil {

    /**
     * 将数据库中的字段下划线后面的字母转换成大写
     * @param str
     * @return
     */
    public static String columnToUpperCase(String str){

        if ("_".equals(str.charAt(0))) {
            str = str.substring(1);
        } else if ("_".equals(str.charAt(str.length() - 1))) {
            str = str.substring(0, str.length() - 1);
        }

        StringBuilder sb1 = new StringBuilder();
        String[] s = str.split("_");
        sb1.append(s[0]);
        for (int i = 1; i < s.length; i++) {
            char c = s[i].charAt(0);
            if (c >= 97) {
                c -= 32;
            }
            // 使用StringBuilder 是为了避免一个单词中出现相同字母的情况
            StringBuilder tmpsb = new StringBuilder(s[i]);
            tmpsb.replace(0, 1, String.valueOf(c));
            sb1.append(tmpsb);
        }
        return sb1.toString();
    }

    public static void main(String[] args) {
        System.out.print(columnToUpperCase("course_product_id"));
    }
}
